<template>
    <div>
      <div class="bg-white grid-content">
        <div style="overflow: hidden; padding-bottom:8px;">
          <!-- <div class="mytitle"><svg-icon icon-class="yjbb" class="myIcon" />水源井基础数据</div>
          <div class="myButtons">
            <el-button @click="handleClick('', 'add')">新增</el-button>
          </div> -->
        </div>
        <!-- 表格 -->
        <el-table :data="tableData" :header-cell-style="{background:'#F5F7FA',color:'#909399'}" border stripe>
          <el-table-column align="center" type="index" label="序号" :index="indexMethod" width="60">
            </el-table-column>
            <el-table-column align="center" prop="jid" label="井号">
            </el-table-column>
            <el-table-column align="center" prop="tcrq" label="投产日期">
            </el-table-column>
            <el-table-column align="center" prop="sjcsl" label="设计产水量">
            </el-table-column>
            <el-table-column align="center" prop="sjcsl1" label="实际产水量">
            </el-table-column>
            <el-table-column align="center" prop="ssdxsy" label="所属地下水源">
            </el-table-column>
            <el-table-column align="center" prop="qsdw" label="取水单位">
            </el-table-column>
            <el-table-column align="center" prop="dxjsw" label="地下静水位">
            </el-table-column>
            <el-table-column align="center" prop="qsdlx" label="取水点类型">
            </el-table-column>
            <el-table-column align="center" prop="ssxzqy" label="所属行政区域">
            </el-table-column>
            <el-table-column align="center" prop="yt" label="用途">
            </el-table-column>
            <el-table-column align="center" prop="kccw" label="开采层位">
            </el-table-column>
            <el-table-column align="center" prop="zcbj" label="钻凿背景">
            </el-table-column>
            <el-table-column align="center" prop="bxh" label="泵型">
            </el-table-column>
            <el-table-column align="center" prop="bpl" label="泵排量">
            </el-table-column>
            <el-table-column align="center" prop="djxh" label="电机型号">
            </el-table-column>
            <el-table-column align="center" prop="sccj" label="生产厂家">
            </el-table-column>
            <el-table-column align="center" prop="qszsj" label="取水证领取时间">
            </el-table-column>
            <el-table-column align="center" prop="sjjs" label="设计井深">
            </el-table-column>
            <el-table-column align="center" prop="sjjs1" label="实际井深">
            </el-table-column>
            <el-table-column align="center" prop="jj" label="井径">
            </el-table-column>
            <el-table-column align="center" prop="jzt" label="水井状态">
            </el-table-column>
            <el-table-column align="center" prop="xjcs" label="修井次数">
            </el-table-column>
            <el-table-column align="center" prop="jfc" label="井房长">
            </el-table-column>
            <el-table-column align="center" prop="jfk" label="井房宽">
            </el-table-column>
            <el-table-column align="center" prop="jfg" label="井房高">
            </el-table-column>
            <el-table-column align="center" prop="jd" label="经度">
            </el-table-column>
            <el-table-column align="center" prop="wd" label="纬度">
            </el-table-column>
            <el-table-column align="center" prop="jlsbxh" label="计量设施型号">
            </el-table-column>
            <el-table-column align="center" prop="jlsbxlh" label="计量设备序列号">
            </el-table-column>
            <el-table-column align="center" prop="azrq" label="计量设施安装检验合格日期" width="110px">
            </el-table-column>
            <el-table-column align="center" prop="sblx" label="水表类型">
            </el-table-column>
            
            <el-table-column align="center" prop="bz" label="备注">
            </el-table-column>
  
            <el-table-column align="center" fixed="right" width="180px" prop="approveStatus" label="审核">
              <template slot-scope="scope">
                <el-button v-if="(scope.row.approveStatus == 1 && leve == 100) || (scope.row.approveStatus == 3 && leve == 1000)" @click="handAudit(scope.row)" type="text" style="color: orange">审核</el-button>
                <el-tooltip v-else :content="scope.row.approveBz" placement="right" effect="light" :disabled="!scope.row.approveBz">
                  <el-badge :is-dot="scope.row.approveBz!=''&&scope.row.approveBz!=null" class="item">
                    <el-tag :class="scope.row.approveBz?'tagstyle':''"
                    :type="
                      scope.row.approveStatus == '5'
                      ?'success'
                      :scope.row.approveStatus == '4'
                        ? 'danger'
                        : scope.row.approveStatus == '3'
                          ? ''
                          :scope.row.approveStatus == '2'
                            ? 'danger'
                            :scope.row.approveStatus == '1'
                              ? 'warning'
                              :'info'"
                      disable-transitions>{{
                      scope.row.approveStatus == '5'
                      ?'管理部通过'
                      :scope.row.approveStatus == '4'
                        ? '管理部未通过'
                        : scope.row.approveStatus == '3'
                          ? '作业区通过待管理部审核'
                          :scope.row.approveStatus == '2'
                            ? '作业区未通过'
                            :scope.row.approveStatus == '1'
                              ? '已上报待作业区审核'
                              :'待上报'
                    }}</el-tag>
                  </el-badge>
                </el-tooltip>
              </template>
            </el-table-column>
          </el-table>
        <!-- 分页器 -->
        <el-pagination align='right'
            background
            @size-change="handleSizeChange" 
            @current-change="handleCurrentChange" 
            :current-page="pageNo"
            :page-sizes="[5,10, 20, 30, 40, 50]" 
            :page-size="pageSize" 
            layout="total, sizes, prev, pager, next, jumper"
            :total="total">
          </el-pagination>
      </div>
  
      <!-- 弹出框 -->
      <el-dialog title="数据审核" :visible.sync="dialogFormVisible" custom-class="saveAsDialog2">
        <el-form :inline="true" :model="syjForm" class="demo-form-inline" ref="syjForm" label-position="left" label-width="80px">
          <el-form-item label="审核:" >
            <el-select v-model="syjForm.approveStatus" placeholder="请选择审核状态">
              <!-- syjForm.approveStatus=='0'? syjForm.approveStatus == '未审核':syjForm.approveStatus=='1'?syjForm.approveStatus == '通过':syjForm.approveStatus == '不通过' -->
              <!-- <el-option label="未审核" value="1"></el-option> -->
              <el-option label="通过" :value="leve==100?3:5"></el-option>
              <el-option label="不通过" :value="leve==100?2:4"></el-option>
            </el-select>
          </el-form-item>

          <el-row>
              <el-form-item label="审核备注:">
                <el-input type="textarea" v-model="syjForm.approveBz" placeholder="请输入审核备注"></el-input>
              </el-form-item>
          </el-row>
        </el-form>

        <div slot="footer" class="dialog-footer">
          <el-button @click="shclose('syjForm')">取 消</el-button>
          <el-button type="primary" @click="submitForm('syjForm')">确 定</el-button>
        </div>
      </el-dialog>
    </div>
  </template>
  
  <script>
  import axios from "axios";
  import { getToken } from "@/utils/auth";
  import yjApi from '@/api/jcsj/jcsy/yjjcsj';
  import syjApi from '@/api/jcsj/scgl/jsj/syj';
  
  export default {
    data() {
      return {
        leve:'',
        saveAsDialog2:'',
        // show:false,//隐藏序列
        pageNo: 1, //当前页码
        pageSize: 10, //每页显示数量
        total: 0, //总数量
        // table数据
        tableData: [],
        //当前页码
        currentPage: 1,
        //表单填报的数据
        syjForm: {
          jid:'',
          tcrq:'',//投产日期
          sjcsl:'',//设计产水量
          sjcsl1:'',//实际产水量
          ssdxsy: '',//所属地下水源
          qsdw: '',//取水单位
          dxjsw: '',//地下静水位
          qsdlx: '',//取水点类型
          ssxzqy: '',//所属行政区域
          yt: '',//用途
          kccw: '',//开采层位
          zcbj: '',//钻凿背景
          bx: '',//泵型
          bpl: '',//泵排量
          djxh: '',//电机型号
          sccj: '',//生产厂家
          qszsj: '',//取水证领取时间
          sjjs: '',//设计井深
          sjjs1: '',//实际井深
          jj: '',//井径
          jzt: '',//水井状态
          xjcs: '',//修井次数
          jfc: '',//井房长
          jfk: '',//井房宽
          jfg: '',//井房高
          jd: '',//经度
          wd: '',//纬度
          jlsbxh: '',//计量设施型号
          jlsbxlh: '',//计量设备序列号
          azrq: '',//计量设施安装检验合格日期
          sblx: '',//水表类型
          bz: '',//备注
          approveStatus:'',
          approveBz:'',
        },
        //验证规则
        rules: {
          jid: [
            { required: true, message: '请选择井', trigger: 'blur' },
          ],
        },
        //时间快捷选择
        pickerOptions: {
          disabledDate(time) {
            return time.getTime() > Date.now();
          },
          shortcuts: [{
            text: '今天',
            onClick(picker) {
              picker.$emit('pick', new Date());
            }
          }, {
            text: '昨天',
            onClick(picker) {
              const date = new Date();
              date.setTime(date.getTime() - 3600 * 1000 * 24);
              picker.$emit('pick', date);
            }
          }, {
            text: '一周前',
            onClick(picker) {
              const date = new Date();
              date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
              picker.$emit('pick', date);
            }
          }]
        },
        //获取当前日期
        currentTime:'',
        //编辑框是否显示
        dialogFormVisible: false,
        //弹出框是否是查看
        ischeck: false,
        //控制查看时不可更改数据
        isInput:false,
        //弹出框标题
        myDialogTitle: '',
        //是否新增
        isadd: true,
        //获取机构列表
        jhList:[],
      }
    },
    created(){
      this.search();
      this.$data.leve = sessionStorage.getItem("userLeve");
    },
    mounted(){
      // this.searchJh();  
      this.filterTime();
    },
    methods: {
      /**
      * 查询列表
      */
      async search() {
        // this.pageNo = pageNo; //当前页码
        // this.pageSize = pageSize; //每页显示数量
        //发送查询请求
        let res = await syjApi.getList({pageNo:this.pageNo,pageSize:this.pageSize});
        //判断是否成功
        if(res.success){
          console.log(res.data);
          //赋值
          this.tableData = res.data.records;
          //总数量
          this.total = res.data.total;
        }
      },
      // //查询井列表
      // async searchJh() {
      //   //发送查询请求
      //   let res = await yjApi.getList({pageNo:-1,pageSize:-1});
      //   //判断是否成功
      //   if(res.success){
      //     console.log(res.data.records);
      //     //赋值
      //     this.jhList = res.data.records;
      //     //总数量
      //   }
      // },

      //审核
      handAudit(row){
        this.$objCopy(row, this.syjForm);
        this.syjForm.approveStatus = ''
        this.syjForm.approveBz = ''
        this.dialogFormVisible = true;
      },
      // 审核弹框关闭触发
      shclose(formName) {
        this.dialogFormVisible = false;
        this.$resetForm("syjForm", this.syjForm); //清空表单数据
        // 清空表单校验，避免再次进来会出现上次校验的记录
        this.$refs[formName].clearValidate()
      },

      //审核确认
      submitForm(formName) {
        //表单验证
        this.$refs[formName].validate(async (valid) => {
            if (valid) {
                let res = null;
                //发送审核请求
                console.log(this.syjForm)
                res = await syjApi.update(this.syjForm);

                console.log(res)
                //判断是否成功
                if (res.success) {
                    // this.$message.success(res.message);
                    this.$message({ message: '修改审核状态成功！', type: 'success' });
                    //刷新
                    this.search();
                    this.$resetForm("syjForm", this.syjForm); //清空表单数据
                    //关闭窗口
                    this.dialogFormVisible = false;
                } else {
                  console.log(res)
                    this.$message.error(res.message);
                }
            }
        })
      },
      //关闭对话框
      handleClose(done) {      
        // 清空表单
        // this.$refs['syjForm'].resetFields();
        // 清空表单校验，避免再次进来会出现上次校验的记录
        this.$refs['syjForm'].clearValidate()
        done()
        
      },
        // 弹框关闭触发
      close(formName) {
        this.dialogFormVisible = false;
        // 清空表单
        // this.$refs[formName].resetFields();
        // 清空表单校验，避免再次进来会出现上次校验的记录
        this.$refs[formName].clearValidate()
      },
  
      // submitForm(formName) {
      //   //表单验证
      //   this.$refs[formName].validate(async (valid) => {
      //       if (valid) {
      //           let res = null;
      //           console.log('111'+this.syjForm.bzid)
      //           //判断ID是否为空
      //           if (this.isadd) {     
      //               console.log(this.syjForm)
      //               //发送添加请求
      //               res = await syjApi.add(this.syjForm);
      //           } else {
      //               //发送修改请求
      //               res = await syjApi.update(this.syjForm);
      //           }
      //           console.log(res)
      //           //判断是否成功
      //           if (res.success) {
      //               this.$message.success(res.message);
      //               //刷新
      //               this.search();
      //               //关闭窗口
      //               this.dialogFormVisible = false;
      //           } else {
      //             console.log(res)
      //               this.$message.error(res.message);
      //           }
      //       }
      //   })
      // },
      // handleClick(row, handle) {
      //   // console.log(row.approveStatus);
      //   this.dialogFormVisible = true;
      //   if (handle == 'check') {
      //     this.myDialogTitle = '水源井基础数据'
      //     this.ischeck = true    
      //     this.isInput = true;// 1.表单禁用
      //     // this.syjForm = row
      //     this.$objCopy(row, this.syjForm);//把当前要编辑的数据复制到数据域，给表单回显
      //     this.$message({ message: '成功打开', type: 'success' });
      //   } else if (handle == 'edit') {
      //         this.myDialogTitle = '水源井基础数据编辑'
      //         this.ischeck = false
      //         this.isInput = false    
      //         this.isadd = false 
      //         this.$objCopy(row, this.syjForm);//把当前要编辑的数据复制到数据域，给表单回显
      //   } else if (handle == 'add') {
      //     // this.syjForm ={}
      //     this.$resetForm("syjForm", this.syjForm); //清空表单数据
      //     this.myDialogTitle = '水源井基础数据填报'
      //     this.ischeck = false
      //     this.isadd = true
      //     this.isInput = false
      //   }
      // },

      // //删除行数据
      // async handleDelete(row) {

      //   let confirm = await this.$myconfirm("确定要删除该数据吗?");
      //   console.log(confirm)
      //   if (confirm) {
      //   //发送删除请求
      //   let res = await syjApi.delete({ jid: row.jid });
      //   console.log(res)
      //   //判断是否成功
      //   if (res.success) {
      //       //成功提示
      //       this.$message.success(res.message);
      //       //刷新
      //       this.search();
      //   } else {
      //       //失败提示
      //       this.$message.error(res.message);
      //   }
      //   }
    
      // },
      //   //批量删除
      // handleSelectionChange(val){
      //   this.multipleSelection = val;
      //   console.log(this.multipleSelection);
      // },
      // async handleBDelete() {
      //   //判断是否可以删除
      //   //确认是否删除
      //   let confirm = await this.$myconfirm("确定要删除该数据吗?");
      //   console.log(confirm)
      //   var ids = []
      //   if (confirm) {
      //       for(let j=0 ; j<this.multipleSelection.length; j++){
      //           if (this.multipleSelection[j].approveStatus == 2) {
      //               //提示不能删除
      //               console.log(this.multipleSelection[j].approveStatus)
      //               this.$message({ message: '有已通过数据不可删除！', type: 'error' });
      //               return;
                
      //           }
      //           ids[j] = this.multipleSelection[j].id
      //       }
      //       console.log("ids",ids)
      //       // const ids = ids.toString();
      //       // console.log("ids",ids)
      //       //发送删除请求
      //       console.log('111')
      //       let res = await xcwxApi.Bdelete(ids);
      //       console.log('222')
      //       console.log(res)
      //       //判断是否成功
      //       if (res.success) {
      //       //成功提示
      //       this.$message.success(res.message);
      //       //刷新
      //       this.search();
      //       } else {
      //       //失败提示
      //       this.$message.error(res.message);
      //       }
      //   }
      // },
  
      /*** 当每页数量发生变化时触发该事件 */
      handleSizeChange(size) {
        console.log(size);
        this.pageSize = size;
        //将每页显示的数量交给成员变量
        this.search(this.pageNo, size);
      },
      /*** 当页码发生变化时触发该事件 */
      handleCurrentChange(page) {
        console.log(page);
        this.pageNo = page;
        //调用查询方法
        this.search(page, this.pageSize);
      },
      // 序号计算
      indexMethod (index) {
      // index默认在0开始，这里+1
        return index + 1 + (this.pageNo - 1) * this.pageSize
      },
      // 获取当前日期
      filterTime() {
        var date = new Date();
        var y = date.getFullYear();
        var m = date.getMonth() + 1;
        m = m < 10 ? '0' + m : m;
        var d = date.getDate();
        d = d < 10 ? '0' + d : d;
        this.currentTime = y + '-' + m + '-' + d;
        // console.log(typeof(new Date(this.currentTime)));
      },
    }
  }
  </script>
  
  <style lang="scss" scoped>
  // 标题
  .mytitle {
    font-size: large;
    padding-left: 10px;
    margin-bottom: 16px;
    float: left;
  }
  
  //按钮组
  .myButtons {
    float: right
  }
  
  //格子的样式
  .bg-white {
    background: #ffffff;
  }
  
  .grid-content {
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
  }
  
  .calendar ::v-deep .el-button-group::before {
    display: none;
  }
  
  .calendar ::v-deep .el-button-group::after {
    display: none;
  }
  
  // 分割线样式
  .el-divider--horizontal {
    display: block;
    height: 2px;
    width: 100%;
    margin: 24px 0;
  }
  
  // 表单各项的样式
  .el-form-item {
    margin: 15px 10px 15px 10px;
  }
  
  //表单禁用字体样式
  .el-input.is-disabled ::v-deep .el-input__inner {
      color: #606266;
    }
  //对话框宽度
  // .customWidth{
  //         width:80%;
  //     }
  ::v-deep .saveAsDialog {
    width: 50% !important;
  }
  
  ::v-deep .el-table .cell{overflow: unset}
  //日期选择框宽度
  .el-date-editor.el-input, .el-date-editor.el-input__inner { width: 200px; }
  
  .el-input {
    width: 200px;
  }

  ::v-deep .saveAsDialog2 {
    width: 25% !important;
  }

  .el-textarea{
    width: 105%;
  }

  .tagstyle{
    cursor: pointer;
  }

  ::v-deep .el-table .cell{
    overflow: visible;
  }
  </style>